/*
 * tipos_artista.h
 *
 *  Created on: 3 de Nov de 2011
 *      Author: pedrocouto
 */

#ifndef TIPOS_ARTISTA_H_
#define TIPOS_ARTISTA_H_

#include <string>
#include <vector>
#include <iostream>

using std::string;
using std::vector;
using std::cout;
using std::endl;

class TipoArtista {
protected:
	string id;
	string nome_tipo;
	string descricao;

public:
	TipoArtista(string _id, string _nome_tipo, string _descricao);
	~TipoArtista() {}

	string getID() { return id; }
	string getNomeTipo() { return nome_tipo; }
	string getDescricao() { return descricao; }

	void setNomeTipo(string _nome_tipo) { nome_tipo = _nome_tipo; }
	void setDescricao(string _descricao) { descricao = _descricao; }
};

class Grupo_Tipos_Artista {
public:
	vector <TipoArtista *> TiposArtista;
	void adicionaTipoArtista(TipoArtista * tipo_artista) { TiposArtista.push_back(tipo_artista); }
	void mostraTiposArtista();
	void mostraTiposArtistaComDescricao(string _nome_tipo);
	void removeTiposArtista();
};

#endif /* TIPOS_ARTISTA_H_ */
